//给你一个字符串 s，由若干单词组成，单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。 
//
// 单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。 
//
// 
//
// 示例 1： 
//
// 
//输入：s = "Hello World"
//输出：5
//解释：最后一个单词是“World”，长度为 5。
// 
//
// 示例 2： 
//
// 
//输入：s = "   fly me   to   the moon  "
//输出：4
//解释：最后一个单词是“moon”，长度为 4。
// 
//
// 示例 3： 
//
// 
//输入：s = "luffy is still joyboy"
//输出：6
//解释：最后一个单词是长度为 6 的“joyboy”。
// 
//
// 
//
// 提示： 
//
// 
// 1 <= s.length <= 10⁴ 
// s 仅有英文字母和空格 ' ' 组成 
// s 中至少存在一个单词 
// 
//
// Related Topics 字符串 👍 721 👎 0


//leetcode submit region begin(Prohibit modification and deletion)
class Solution {

    /**
     * 从后往前按照逻辑写条件判断
     * 定义全局变量，字符串长度，默认为0
     * for循环倒序遍历。
     * 先匹配末尾空格，如果是空格且长度为0，continue
     * 是字母，length++
     * 匹配到空格且length >0，则是代表最后一个单词匹配结束，返回length
     * 循环结束，没有返回值，则代表该单词前没有空格，返回length。
     */

    public int lengthOfLastWord(String s) {
        int length = 0;
        for (int i = s.length() - 1; i >= 0; i--) {
            if (s.charAt(i) == ' ' && length == 0) {
                continue;
            }
            if (s.charAt(i) != ' ') {
                length++;
            }
            if ((s.charAt(i) == ' ')) {
                return length;
            }
        }
        return length;
    }
}
//leetcode submit region end(Prohibit modification and deletion)
